package com.knife.easyexcel.read.validator;


import com.knife.easyexcel.read.data.ImportDataWarp;
import com.knife.easyexcel.read.data.ImportValidatorContext;

/**
 * 校验接口
 *
 * @author Win10
 * @created 2024年12月19日 星期四 10:08
 */
public interface ImportValidator<T> {
    /**
     * 校验数据
     *
     * @param cuxImportDataWarp         包装类
     * @param cuxImportValidatorContext 校验链上下文
     * @return 结果非空，表示错误
     */
    String validate(ImportDataWarp<T> cuxImportDataWarp,
                    ImportValidatorContext<T> cuxImportValidatorContext);

    /**
     * 快速失败；即校验失败时，立即退出
     *
     * @return 默认不快速失败
     */
    default Boolean fastFail() {
        return false;
    }
}
